package com.xzssmk.leisure.x.mapper;

import java.util.List;

import org.apache.ibatis.annotations.Param;

import com.xzssmk.leisure.x.po.ScenicSpot;
import com.xzssmk.leisure.x.po.ScenicSpotExample;
import com.xzssmk.leisure.x.po.SelectModel;

public interface ScenicSpotMapper {
    long countByExample(ScenicSpotExample example);

    int deleteByExample(ScenicSpotExample example);

    int deleteByPrimaryKey(Integer scenicSpotId);

    int insert(ScenicSpot record);

    int insertSelective(ScenicSpot record);

    List<ScenicSpot> selectByExampleWithBLOBs(ScenicSpotExample example);

    List<ScenicSpot> selectByExample(ScenicSpotExample example);

    ScenicSpot selectByPrimaryKey(Integer scenicSpotId);

    ScenicSpot selectByLoginName(String loginName);

    int updateByExampleSelective(@Param("record") ScenicSpot record, @Param("example") ScenicSpotExample example);

    int updateByExampleWithBLOBs(@Param("record") ScenicSpot record, @Param("example") ScenicSpotExample example);

    int updateByExample(@Param("record") ScenicSpot record, @Param("example") ScenicSpotExample example);

    int updateByPrimaryKeySelective(ScenicSpot record);

    int updateByPrimaryKeyWithBLOBs(ScenicSpot record);

    int updateByPrimaryKey(ScenicSpot record);

    int deleteByPrimaryKeys(@Param("idlist") List<Integer> idlist);

    List<ScenicSpot> getPageList(@Param("subSQL") String subSQL);

    List<ScenicSpot> getUserPageList(@Param("subSQL") String subSQL);

    List<SelectModel> getSelectList();

    int getScenicSpotByLoginName(ScenicSpot scenicSpot);

    ScenicSpot login(@Param("loginname") String loginname, @Param("loginpassword") String loginpassword);
}